import type { VueTypeValidableDef, VueTypesInterface } from 'vue-types';
import VueTypes, { toType } from 'vue-types';
import type { CSSProperties } from 'vue';

// 自定义扩展vue-types
type PropTypes = VueTypesInterface & {
  readonly style: VueTypeValidableDef<CSSProperties>;
};

// const propTypes = createTypes({
//   func: undefined,
//   bool: undefined,
//   string: undefined,
//   number: undefined,
//   object: undefined,
//   integer: undefined
// }) as PropTypes

export class propTypes extends VueTypes {
  static style() {
    return toType('style', {
      type: [String, Object],
      default: undefined
    });
  }
}
